package com.start.form.engine.core.entity;

import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.annotation.TableName;
import com.start.common.entity.StartBaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

@Data
@TableName(value = "start_form_config", autoResultMap = true)
public class StartFormConfig extends StartBaseEntity {
    @Schema(name = "名称")
    private String name;
    @Schema(name = "数据源")
    private String dataSource;
    @Schema(name = "表单组别")
    private String formCategory;
    @Schema(name = "表单编码")
    private String formCode;
    @Schema(name = "表名称")
    private String tableName;
    @Schema(name = "是否驼峰名称 0否 1是")
    private String enableColumnHumpName;
    @Schema(name = "表配置")
    private JSONObject formOption;
    @Schema(name = "是否创建菜单", description = "0 未创建 1已创建")
    private Boolean isCreateMenu;
    @Schema(name = "是否同步数据库", description = "0 未同步 1已同步")
    private Boolean isSyncDataBase;
    @Schema(name = "存储器类型")
    private String dataStorageType;
    @Schema(name = "当前版本")
    private Long tableVersion;
    @Schema(name = "上一版本")
    private Long lastVersion;
    @Schema(name = "数据删除模式")
    private Integer dataDelMode;
    @Schema(name = "数据删除标记")
    private String dataDelFlag;
    @Schema(name = "数据未删除标记  0逻辑删除 1物理删除")
    private String dataNotDelFlag;
    @Schema(name = "父级id")
    private String parentId;
    @Schema(name = "表单图片")
    private JSONArray formImg;
    @Schema(name = "扩展属性")
    private JSONObject props;
    @Schema(name = "扩展参数")
    private String params;
    @Schema(name = "扩展参数1")
    private String params1;
    @Schema(name = "扩展参数2")
    private String params2;
    @Schema(name = "扩展参数3")
    private String params3;
    @Schema(name = "扩展参数4")
    private String params4;
}
